package com.etalk.crm.service;

import com.alibaba.fastjson.JSONObject;
import com.etalk.crm.pojo.Lessons;
import com.etalk.crm.pojo.NewMainBean;
import com.etalk.crm.pojo.PersonFeedback;
import com.github.pagehelper.PageInfo;

import java.util.Map;

/**
 * @author James
 * @date 2018/12/28 18:32
 * @Description
 */
public interface SSCNewMainService {
        /*
     * @Author James
     * @Description SSC 教材将学完列表
     * @Date 9:50 2018/12/29
     * @Param sscId  学习服务顾问
     * @return
     **/
    PageInfo<NewMainBean> selectMaterialFinishedBySSC(int sscId, Integer page, Integer size);


    /*
     * @Author James
     * @Description  新学员oc课程跟踪
     * @Date 9:53 2018/12/29
     * @Param sscId  学习服务顾问
     * @return
     **/
    PageInfo<NewMainBean>selectOcNewStudent(int sscId, Integer page, Integer size);


    /*
     * @Author James
     * @Description 学生旷课或者取消上课记录(首页未正常完成课程学员面板)
     * @Date 10:59 2018/12/29
     * @Param sscId  学习服务顾问
     * @return
     **/
    PageInfo<NewMainBean> selectLessonState(int sscId, Integer page, Integer size);

    /*
     * @Author James
     * @Description 学生超过多少天没有约课的记录(首页未约课记录面板)
     * @Date 10:59 2018/12/29
     * @Param sscId  学习服务顾问
     * @return
     **/
    PageInfo<NewMainBean>selectInactiveLessons(int sscId, Integer page, Integer size);

       /*
     * @Author James
     * @Description 老师投诉学员列表
     * @Date 16:49 2018/12/29
     * @Param
     * @return
     **/
    PageInfo<NewMainBean> selectTeacherRank(int sscId, Integer page, Integer size);


    /*
     * @Author James
     * @Description 学员投诉老师 列表
     * @Date 17:10 2018/12/29
     * @Param sscId  学习服务顾问
     * @return
     **/
    PageInfo<NewMainBean>searchFeedbackInfoByPage(int sscId, Integer page, Integer size);

     /*
     * @Author James
     * @Description 学员投诉恢复
     * @Date 17:10 2018/12/29
     * @Param
     * @return
     **/
    int addFeedbackResult(PersonFeedback feedback);


    /*
     * @Author James
     * @Description 老学员跟进
     * @Date 15:16 2019/1/10
     * @Param sscId  学习服务顾问
     * @return
     **/
    PageInfo<NewMainBean> selectOcOldStudent(int sscId, Integer page, Integer size);
    
    
    /*
     * @Author James
     * @Description 添加 老师投诉学员 回复
     * @Date 17:29 2019/1/11
     * @Param lessonsId 课程id   reple:ssc回复的内容  addUserName ：添加人loginname  addUserId:添加人id
     * @return 
     **/
    int addTeacherRankReply(int lessonsId,String reply,String addUserName,int addUserId);


     /**
     * 查询学员投老师那节课的信息
     * @param lessonId 课程id
     * @return Lessons
     */
    Lessons selectLessonInfoById(int lessonId);


    /*
     * @Author James
     * @Description 查询异常课程处理结果信息
     * @Date 14:21 2019/1/14
     * @Param
     * @return
     **/
    Map<String,Object> searcherVoidReasonList(int lessonId);
    
    
    /*
     * @Author James
     * @Description 添加课程异常原因
     * @Date 16:06 2019/1/15
     * @Param 
     * @return 
     **/
    int addVoidReason(JSONObject jsonObject,String addUserName,int addUserId);


    /*
     * @Author James
     * @Description 订单续费
     * @Date 16:39 2019/3/5
     * @Param
     * @return
     **/
    PageInfo<NewMainBean> renewOrders (int sscId,Integer page, Integer size);

    /*
     * @Author James
     * @Description 离职老师常用学员
     * @Date 16:39 2019/3/5
     * @Param
     * @return
     **/
    PageInfo<NewMainBean> leaveTeacherStu (int sscId,Integer page, Integer size);

    /*
     * @Author James
     * @Description 修改订单续费状态
     * @Date 17:22 2019/3/5
     * @Param
     * @return
     **/
    int updateRenewOrdersfinish(String orderId);

    /*
     * @Author Terwer
     * @Description 上完OC课的学生列表
     * @Date 16:39 2019/3/5
     * @Param
     * @return
     **/
    PageInfo<NewMainBean> ocInfo (int sscId,Integer page, Integer size);
}
